import { Recipient } from '@bitgo/sdk-core';

export const AMOUNT = 1000;
export const FUNGIBLE_TOKEN_AMOUNT = 1;

export const addresses = {
  validAddresses: [
    '0xf7405c28a02cf5bab4ea4498240bb3579db45951794eb1c843bef0534c093ad9',
    '0x1aed808916ab9b1b30b07abb53561afd46847285ce28651221d406173a372449',
  ],
  invalidAddresses: [
    'randomString',
    '0xc4173a804406a365e69dfb297ddfgsdcvf',
    '5ne7phA48Jrvpn39AtupB8ZkCCAy8gLTfpGihZPuDqen',
  ],
};

export const sender = {
  address: '0x1aed808916ab9b1b30b07abb53561afd46847285ce28651221d406173a372449',
  privateKey: '0x54e1a88eb2b881fe6c222985d0fabc9ba3aca35743dd1d19db18a9a355acbaaa',
  publicKey: '0xf73836f42257240e43d439552471fc9dbcc3f1af5bd0b4ed83f44b5f66146442',
};

export const sender2 = {
  address: '0x1aed808916ab9b1b30b07abb53561afd46847285ce28651221d406173a372449',
  publicKey: '0xf73836f42257240e43d439552471fc9dbcc3f1af5bd0b4ed83f44b5f66146442',
};

export const fungibleSender = {
  address: '0xd171f03aa2c3f37d7838b76cdd83da045ecc3f080a1c190f7e412d79485809a0',
};

export const feePayer = {
  address: '0xdbc87a1c816d9bcd06b683c37e80c7162e4d48da7812198b830e4d5d8e0629f2',
  privateKey: '0x51a9507d9127841a1465189188d93065cb26bad3bec05d3c8f28e9c1fc35bda0',
  publicKey: '0x5223396c531f13e031a9f0cb26d459d799a52e51be9a1cb9e871afb4c31f91ff',
};

export const recipients: Recipient[] = [
  {
    address: addresses.validAddresses[0],
    amount: AMOUNT.toString(),
  },
];

export const batchRecipients: Recipient[] = [
  {
    address: '0xdd52c0b72a73696b867d6571a308c413e43bff8f44956a5991abc4d50db0b849',
    amount: '1000',
  },
  {
    address: '0x2a81760d52db9a96df2609860218214b6d1012e77e84a3fed5145a9a65bf6932',
    amount: '1000',
  },
];

export const fungibleTokenRecipients: Recipient[] = [
  {
    address: addresses.validAddresses[0],
    amount: FUNGIBLE_TOKEN_AMOUNT.toString(),
  },
  {
    address: '0xba7af528be58094057170e365a6b5fa836868152a505b2733355dff1d183171e',
    amount: '1',
  },
];

export const batchFungibleRecipients: Recipient[] = [
  {
    address: '0xdd52c0b72a73696b867d6571a308c413e43bff8f44956a5991abc4d50db0b849',
    amount: '1',
  },
  {
    address: '0x2a81760d52db9a96df2609860218214b6d1012e77e84a3fed5145a9a65bf6932',
    amount: '1',
  },
];

export const digitalTokenRecipients: Recipient[] = [
  {
    address: addresses.validAddresses[0],
    amount: '1',
  },
];

export const invalidRecipients: Recipient[] = [
  {
    address: addresses.invalidAddresses[0],
    amount: AMOUNT.toString(),
  },
  {
    address: addresses.validAddresses[0],
    amount: '-919191',
  },
  {
    address: addresses.validAddresses[0],
    amount: 'invalidAmount',
  },
];

export const TRANSFER =
  '0x1aed808916ab9b1b30b07abb53561afd46847285ce28651221d406173a37244992000000000000000200000000000000000000000000000000000000000000000000000000000000010d6170746f735f6163636f756e740e7472616e736665725f636f696e73010700000000000000000000000000000000000000000000000000000000000000010a6170746f735f636f696e094170746f73436f696e000220f7405c28a02cf5bab4ea4498240bb3579db45951794eb1c843bef0534c093ad908e803000000000000400d0300000000006400000000000000979390670000000002030020f73836f42257240e43d439552471fc9dbcc3f1af5bd0b4ed83f44b5f6614644240caeb90efd4b7ecd922c97bb3163e6a9de1fbb2ee0fc0d56af484f4af9b0015c5831341550af29b3686713b6657c821d894635fe13c7933f06ee043728f040b090000dbc87a1c816d9bcd06b683c37e80c7162e4d48da7812198b830e4d5d8e0629f200205223396c531f13e031a9f0cb26d459d799a52e51be9a1cb9e871afb4c31f91ff4013e7e8a1325ee5f656c93baa3d0206a1d9bd6da5abdc6f5d9b8bbbb0926ddac68f3e57a915dd217d2d43e776a6cc01af72f895ea712acc836d30349f29a3c606';

export const TRANSACTION_USING_TRANSFER_COINS =
  '0x1aed808916ab9b1b30b07abb53561afd46847285ce28651221d406173a37244992000000000000000200000000000000000000000000000000000000000000000000000000000000010d6170746f735f6163636f756e740e7472616e736665725f636f696e73010700000000000000000000000000000000000000000000000000000000000000010a6170746f735f636f696e094170746f73436f696e000220f7405c28a02cf5bab4ea4498240bb3579db45951794eb1c843bef0534c093ad908e803000000000000400d0300000000006400000000000000979390670000000002030020f73836f42257240e43d439552471fc9dbcc3f1af5bd0b4ed83f44b5f6614644240caeb90efd4b7ecd922c97bb3163e6a9de1fbb2ee0fc0d56af484f4af9b0015c5831341550af29b3686713b6657c821d894635fe13c7933f06ee043728f040b090000dbc87a1c816d9bcd06b683c37e80c7162e4d48da7812198b830e4d5d8e0629f200205223396c531f13e031a9f0cb26d459d799a52e51be9a1cb9e871afb4c31f91ff4013e7e8a1325ee5f656c93baa3d0206a1d9bd6da5abdc6f5d9b8bbbb0926ddac68f3e57a915dd217d2d43e776a6cc01af72f895ea712acc836d30349f29a3c606';

export const FUNGIBLE_TOKEN_TRANSFER =
  '0x1aed808916ab9b1b30b07abb53561afd46847285ce28651221d406173a372449a700000000000000020000000000000000000000000000000000000000000000000000000000000001167072696d6172795f66756e6769626c655f73746f7265087472616e73666572010700000000000000000000000000000000000000000000000000000000000000010e66756e6769626c655f6173736574084d65746164617461000320d5d0d561493ea2b9410f67da804653ae44e793c2423707d4f11edb2e3819205020f7405c28a02cf5bab4ea4498240bb3579db45951794eb1c843bef0534c093ad9080100000000000000400d0300000000006400000000000000e42696670000000002030020f73836f42257240e43d439552471fc9dbcc3f1af5bd0b4ed83f44b5f661464424029665cd4c94658a0d83907bbed7e761794b25bccc03fc87e6dd63a543accdddfd7a6f1e7a15e8681547ca437ff99b58c92f816e35a0f333d7f1fd1330c21ad0a0000dbc87a1c816d9bcd06b683c37e80c7162e4d48da7812198b830e4d5d8e0629f200205223396c531f13e031a9f0cb26d459d799a52e51be9a1cb9e871afb4c31f91ff40de7b0bb86ca346031942e9cf21ff9604c7c08c2c662e38a0afe3dd640512c0441396c0697cd8bbbcf39694d6f88e35f6bed9fb34bd209b0479b5e8bd0cf3eb0b';

export const FUNGIBLE_BATCH_TRANSFER =
  '0xc8f02d25aa698b3e9fbd8a08e8da4c8ee261832a25a4cde8731b5ec356537d0951000000000000000200000000000000000000000000000000000000000000000000000000000000010d6170746f735f6163636f756e741e62617463685f7472616e736665725f66756e6769626c655f617373657473000320d5d0d561493ea2b9410f67da804653ae44e793c2423707d4f11edb2e381920504102dd52c0b72a73696b867d6571a308c413e43bff8f44956a5991abc4d50db0b8492a81760d52db9a96df2609860218214b6d1012e77e84a3fed5145a9a65bf6932110201000000000000000100000000000000400d030000000000640000000000000000255a3ab3010000020300202121dcd098069ae535697dd019cfd8677ca7aba0adac1d1959cbce6dc54b125940d3e7448bafd11924a5d18985310b99a539a7b903961d5c296fdcb314950b4a247fad77bad797a644e59fb76767cf796c207a40ebc3d22fc5c847172ebf09570f0000dbc87a1c816d9bcd06b683c37e80c7162e4d48da7812198b830e4d5d8e0629f200205223396c531f13e031a9f0cb26d459d799a52e51be9a1cb9e871afb4c31f91ff40e242d59712e8e8a213cb6b24ab117854cf12275660dedcb49eb5b22f543bada83f87ca51d5da06a23ac5d4dc6bbfc7745cb44d22467be613565f41b3ba875108';

export const DIGITAL_ASSET_TRANSFER =
  '0x1aed808916ab9b1b30b07abb53561afd46847285ce28651221d406173a372449ab00000000000000020000000000000000000000000000000000000000000000000000000000000001066f626a656374087472616e736665720107000000000000000000000000000000000000000000000000000000000000000405746f6b656e05546f6b656e0002202e356062777469d39ca5d9b72512ce2d5713d7938ed6ca9193d4fc2016a819fd20f7405c28a02cf5bab4ea4498240bb3579db45951794eb1c843bef0534c093ad9400d0300000000006400000000000000526798670000000002030020f73836f42257240e43d439552471fc9dbcc3f1af5bd0b4ed83f44b5f66146442400c2c31eae495d22d1d31031b9756e8238a3df6e760515aa3e1108d93b3aec6aeb91684307e8365ad9dc44c0b5957e95a21a6f47d8d4a6e0eb3b145fb3d517f030000dbc87a1c816d9bcd06b683c37e80c7162e4d48da7812198b830e4d5d8e0629f200205223396c531f13e031a9f0cb26d459d799a52e51be9a1cb9e871afb4c31f91ff40dd6c064e44642819dec2f63d32d6daa4f889d62d06025ad99b42562c4c6cdef8b1437739115d7f38050078829efb9dd05528f53309bcab5b89fadb283423100d';

export const COIN_BATCH_TRANSFER =
  '0xc8f02d25aa698b3e9fbd8a08e8da4c8ee261832a25a4cde8731b5ec356537d0951000000000000000200000000000000000000000000000000000000000000000000000000000000010d6170746f735f6163636f756e741462617463685f7472616e736665725f636f696e73010700000000000000000000000000000000000000000000000000000000000000010a6170746f735f636f696e094170746f73436f696e00024102dd52c0b72a73696b867d6571a308c413e43bff8f44956a5991abc4d50db0b8492a81760d52db9a96df2609860218214b6d1012e77e84a3fed5145a9a65bf69321102e803000000000000e803000000000000400d030000000000640000000000000009d4ea6700000000020300202121dcd098069ae535697dd019cfd8677ca7aba0adac1d1959cbce6dc54b12594047602d08426ce035971e86d57d57fc33a7e9d29da56a87a2e6e9d12ae3b39e25892298fa8b080111c609c9a451264b320236a06a45eab870765f90ffc4a42a030000dbc87a1c816d9bcd06b683c37e80c7162e4d48da7812198b830e4d5d8e0629f200205223396c531f13e031a9f0cb26d459d799a52e51be9a1cb9e871afb4c31f91ff401d817a641b915727057babb0ddfe6876583ac5c8d4b86b4c91385dc94f071f8e12a4908786a417b2721fa9838dd1bee6e153ca02f78de43161a9810407ea0b0f';

export const INVALID_TRANSFER =
  'AAAAAAAAAAAAA6e7361637469bc4a58e500b9e64cb6547ee9b403000000000000002064ba1fb2f2fbd2938a350015d601f4db89cd7e8e2370d0dd9ae3ac4f635c1581111b8a49f67370bc4a58e500b9e64cb6462e39b802000000000000002064ba1fb2f2fbd2938a350015d601f4db89cd7e8e2370d0dd9ae3ac47aa1ff81f01c4173a804406a365e69dfb297d4eaaf002546ebd016400000000000000cba4a48bb0f8b586c167e5dcefaa1c5e96ab3f0836d6ca08f2081732944d1e5b6b406a4a462e39b8030000000000000020b9490ede63215262c434e03f606d9799f3ba704523ceda184b386d47aa1ff81f01000000000000006400000000000000';

export const fungibleTokenAddress = {
  usdt: '0xd5d0d561493ea2b9410f67da804653ae44e793c2423707d4f11edb2e38192050',
};

export const digitalAssetAddress = '0x2e356062777469d39ca5d9b72512ce2d5713d7938ed6ca9193d4fc2016a819fd';

export const LEGACY_COIN = '0x4fb379c10c763a13e724064ecfb7d946690bea519ba982c81b518d1c11dd23fe::fa_test::Coinz';

export const FUNGIBLE_SERIALIZED_TX_HEX =
  '0xd171f03aa2c3f37d7838b76cdd83da045ecc3f080a1c190f7e412d79485809a00000000000000000020000000000000000000000000000000000000000000000000000000000000001167072696d6172795f66756e6769626c655f73746f7265087472616e73666572010700000000000000000000000000000000000000000000000000000000000000010e66756e6769626c655f6173736574084d65746164617461000320d5d0d561493ea2b9410f67da804653ae44e793c2423707d4f11edb2e3819205020ba7af528be58094057170e365a6b5fa836868152a505b2733355dff1d183171e080100000000000000400d0300000000006400000000000000fcaabe670000000002030020000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c14e0894f3334dcd4008447628f3f7e3b5c5200eee399b72c0e63f8e5d09f09600209b4e96086d111500259f9b38680b0509a405c1904da18976455a20c691d3bb074000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000';

export const FUNGIBLE_BATCH_RAW_TX_HEX =
  '0x1aed808916ab9b1b30b07abb53561afd46847285ce28651221d406173a3724490e000000000000000200000000000000000000000000000000000000000000000000000000000000010d6170746f735f6163636f756e741e62617463685f7472616e736665725f66756e6769626c655f617373657473000320d5d0d561493ea2b9410f67da804653ae44e793c2423707d4f11edb2e381920504102dd52c0b72a73696b867d6571a308c413e43bff8f44956a5991abc4d50db0b8492a81760d52db9a96df2609860218214b6d1012e77e84a3fed5145a9a65bf6932110201000000000000000100000000000000400d03000000000064000000000000008b037d670000000002030020000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000dbc87a1c816d9bcd06b683c37e80c7162e4d48da7812198b830e4d5d8e0629f2002000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000';

export const FUNGIBLE_BATCH_SIGNABLE_PAYLOAD =
  '5efa3c4f02f83a0f4b2d69fc95c607cc02825cc4e7be536ef0992df050d9e67c011aed808916ab9b1b30b07abb53561afd46847285ce28651221d406173a3724490e000000000000000200000000000000000000000000000000000000000000000000000000000000010d6170746f735f6163636f756e741e62617463685f7472616e736665725f66756e6769626c655f617373657473000320d5d0d561493ea2b9410f67da804653ae44e793c2423707d4f11edb2e381920504102dd52c0b72a73696b867d6571a308c413e43bff8f44956a5991abc4d50db0b8492a81760d52db9a96df2609860218214b6d1012e77e84a3fed5145a9a65bf6932110201000000000000000100000000000000400d03000000000064000000000000008b037d67000000000200dbc87a1c816d9bcd06b683c37e80c7162e4d48da7812198b830e4d5d8e0629f2';
